﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Biblioteca.classesBasicas.jogo;
using Biblioteca.fachada;

namespace Desktop.views.cruds.crudsJogo.crudCampo
{
    public partial class AlterarRemoverCampo : Form
    {
        private MenuCampo menuCampo;
        private Campo campo;
        private Fachada fachada = new Fachada();

       
        public AlterarRemoverCampo(MenuCampo menuCampo, Campo campo)
        {
            // TODO: Complete member initialization
            this.menuCampo = menuCampo;
            this.campo = campo;

            menuCampo.Hide();
            InitializeComponent();

            inicializaTextsBoxs();
        }

        private void buttonAlterar_Click(object sender, EventArgs e)
        {
            this.campo = alteraTextsBoxs();

            fachada.alterarCampo(this.campo);

            menuCampo.carregarGridViewCampo();
            menuCampo.Show();
            this.Dispose();
        }

        private void buttonRemover_Click(object sender, EventArgs e)
        {
            fachada.removerCampo(this.campo);

            menuCampo.carregarGridViewCampo();
            menuCampo.Show();
            this.Dispose();
        }

        private void buttonCancelar_Click(object sender, EventArgs e)
        {
            menuCampo.Show();
            this.Dispose();
        }

        private void AlterarRemoverCampo_FormClosed(object sender, FormClosedEventArgs e)
        {            
            menuCampo.Show();
            this.Dispose();
        }

        private void inicializaTextsBoxs()
        {
            this.labelIdValor.Text = this.campo.Id;
            this.textBoxTipo.Text = this.campo.Tipo;
            this.textBoxTamanho.Text = this.campo.Tamanho;            
        }

        private Campo alteraTextsBoxs()
        {
            this.campo.Id = this.labelIdValor.Text;
            this.campo.Tipo = this.textBoxTipo.Text;
            this.campo.Tamanho = this.textBoxTamanho.Text;
            
            return campo;
        }

        //Validação individual
        public void validacaoTextBox()
        {
            //if (textBoxNome.Text == "")
            //{
            //    textBoxNome.Focus();

            //    MessageBox.Show("Por favor, informar o nome do cliente:", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            //}
            //else if (maskedTextBoxRg.Text =="") 
            //{
            //    maskedTextBoxRg.Focus();

            //    MessageBox.Show("Tem certeza que quer cadastrar cliente sem Rg?", "Aviso", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation);

            //    //if MessageBoxButtons.YesNo == true 

            //}            
        }



        //Metódo cor entrada TextBox
        private void CorEntrada(TextBox tb)
        {
            tb.BackColor = Color.LightBlue;
        }
        //Metódo cor saída TextBox
        private void CorSaida(TextBox tb)
        {
            tb.BackColor = Color.White;
        }        


        //Evento TextBox Enter
        private void textBoxNome_Enter(object sender, EventArgs e)
        {
            CorEntrada((TextBox)sender);
        }
        //Evento TextBox Leave
        private void textBoxNome_Leave(object sender, EventArgs e)
        {
            CorSaida((TextBox)sender);
        }       

    }
}
